﻿using MotorLibrary.Repository.DTO;
using MotorLibrary.Service;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;

namespace WebMotor.Controllers
{
    public class VariableEjecucionController: ApiController, IVariableEjecucionController
    {
        private IVariableEjecucionService _variableEjecucionService;
        public VariableEjecucionController(IVariableEjecucionService variableEjecucionService)
        {
            this._variableEjecucionService = variableEjecucionService;
        }        

        // GET api/variableejecucion/{id}
        public VariableEjecucionDTO Get(long id)
        {
            return _variableEjecucionService.Read(id);
        }

        // GET api/variableejecucion
        public IList<VariableEjecucionDTO> Get()
        {
            return _variableEjecucionService.List();
        }

        // GET api/variableejecucion/ejecucion/{ejecucionID}
        [HttpGet]
        [Route("api/variableejecucion/ejecucion/{ejecucionID}")]
        public IList<VariableEjecucionDTO> FilterByEjecucion(long ejecucionID)
        {
            return _variableEjecucionService.FilterByEjecucion(ejecucionID);
        }

        // GET api/variableejecucion/variable/{variableID}
        [HttpGet]
        [Route("api/variableejecucion/variable/{variableID}")]
        public IList<VariableEjecucionDTO> FilterByVariable(long variableID)
        {
            return _variableEjecucionService.FilterByVariable(variableID);
        }
    }
}